import { defineConfig } from "vite"; // 动态配置函数
import { createVuePlugin } from "vite-plugin-vue2";
import path from "path"; // 引入 path 模块以确保跨平台兼容性

// 别名配置函数，提升可维护性
function createAlias() {
  return [
    {
      find: "@",
      replacement: path.resolve(__dirname, "src"), // 使用 path.resolve 确保跨平台兼容性
    },
  ];
}
export default () =>
  defineConfig({
    plugins: [createVuePlugin()],
    server: {
      open: true, // 自动打开浏览器
      port: process.env.PORT || 1567, // 支持通过环境变量动态设置端口
      strictPort: false, // 如果端口被占用，自动尝试下一个可用端口
    },
    resolve: {
      alias: createAlias(), // 调用别名配置函数
      extensions: ['.js', '.vue', '.json'] // 自动补全扩展名顺序
    },
  });
